Titania's terrain is PROCEDURAL
It starts with a standard base (well, 3 of them) and modifies them using actors.
As the "terrain" actors are loaded, they add to the ground through mathematical formulas.
Multiple actors can affect the same polygons, leading to complex terrain.
Since the setup is entirely static, the layout will always be exactly the same.

There are two terrain modes:
1. polygon-based
2. one big plane (used after checkpoint and at boss)

Note that, because of a quirk in the programming, the starting slices have jagged edges.
The big planes snap to every 220cm based on the player position, but I have placed them where the polygon terrain ends.

For those of you that like code, I noted the parameters on each terrain actor.
In case you want to recreate the terrain formulas yourself, here they are in pseudocode format.
In all cases, treat Z as relative to the start of the actor's influence (the next increment of 220cm) and going in the direction of the level.

Sine Hill (most common, additive)
=================================
if (Absolute(X - Shift) <= Limit AND Z >= 0 AND Z <= Depth) {
	Y += Cosine((X - Shift) / Limit * pi / 2) * Height * Sine((Depth - Z) / Depth * pi);
}


Plateau (only a few, not additive)
==================================
if (Z >= 0 AND Z <= Depth) {
	variable H
	if (Z <= Height / (pi * 70/180)) {
		H = Z * (pi * 70/180);
	} else if (Height / (pi * 70/180) >= (Depth - Z)) {
		H = (Depth - Z) * (pi * 70/180);
	} else {
		H = Height;
	}
	if (Shift + 1760 - Width/2 <= X AND X <= (Shift + 1760 + Width/2) AND Y < H) {
		Y = H;
	}
}

Sine Canyon (the big finale! additive)
======================================
if (Z >= 0 AND Z <= Depth) {
	variable A = X - Shift + (Sine((Depth - Z) * 16 * pi / Depth) * 500);
	if (Absolute(A) <= Width) {
		variable B = Cosine(A/Width * pi/2);
		if (B >= 0.7) {
			B = 0.7;
		}
		Y -= B * Height * 4 * Z / Depth;
	}
	Y += (Height - ((1 - Z / Depth) * Height)) * 4 * 0.7;
}
